package WCC;

import org.apache.hadoop.io.IntWritable;
import org.apache.hadoop.io.Text;
import org.apache.hadoop.mapreduce.Reducer;

import java.io.IOException;
//combine可以做与reduce一样的处理可以不甚至reduce反射
public class WCCombine  extends Reducer<Text, IntWritable,Text, IntWritable> {

    @Override
    protected void reduce(Text key, Iterable<IntWritable> values, Context context) throws IOException, InterruptedException {
        //把迭代器的value({1,1,1,1})
        //初始化计数器
        int count = 0;
        //开始计数
        for (IntWritable value: values) {
            count = count+value.get();//将所有的 1 累加
        }
        //封装数据并输出（写到文本里 例如：（hive，9））
        context.write(key,new IntWritable(count));
    }
}
